package org.batatasframework.support.charts.baidu;

/**
 * 提示框
 * @author Administrator
 *
 */
public class ChartTooltip {
	/**
	 * 触发类型，默认数据触发，见下图，可选为：'item' | 'axis'
	 */
	private String trigger;
	
	/**
	 * <pre>
内容格式器：{string}（Template） | {Function}，支持异步回调见表格下方
{string}，模板（Template），其变量为：

    {a} | {a0}
    {b} | {b0}
    {c} | {c0}
    {d} | {d0} （部分图表类型无此项）
    {e} | {e0} （部分图表类型无此项）
    多值下则存在多套{a1}, {b1}, {c1}, {d1}, {a2}, {b2}, {c2}, {d2}, ...
    其中变量a、b、c、d在不同图表类型下代表数据含义为：
        折线（区域）图、柱状（条形）图、K线图 : a（系列名称），b（类目值），c（数值）, d（无）
        散点图（气泡）图 : a（系列名称），b（数据名称），c（数值数组）, d（无）
        地图 : a（系列名称），b（区域名称），c（合并数值）, d（无）
        饼图、雷达图、仪表盘、漏斗图: a（系列名称），b（数据项名称），c（数值）, d（饼图：百分比 | 雷达图：指标名称）
        力导向图, 和弦图 :
            节点 : a（系列名称），b（节点名称），c（节点值）, d(节点类目索引)
            边 : a（系列名称），b（边名称，默认为大端节点名称-小端节点名称），c（link.value）, d(大端节点 name 或者 index), e(小端节点 name 或者 index)

{Function}，传递参数列表为[params, ticket, callback]，详见下：

    params : 数组内容同模板变量，

    [
        {

            seriesIndex: 0,
            seriesName: '一周销量',
            name: '周一',
            dataIndex: 0,
            data: data,
            name: name,
            value: value,
            percent: special,       // 饼图
            indicator: special,     // 雷达图、力导向、和弦
            value2: special2,       // 力导向、和弦
            indicator2: special2    // 力导向、和弦
        },
        {..},
        ...
    ]

    ticket : 异步回调标识
    callback : 异步回调，回调时需要两个参数，第一个为前面提到的ticket，第二个为填充内容html
    *函数回调时this指针指向当前图表实例（myChart）

	 *</pre>
	 */
	private String formatter;
	
	/**
	 * 显示策略，可选为：true（显示） | false（隐藏）
	 */
	private boolean show = true;
	
	private ChartAxisPointer axisPointer = new ChartAxisPointer();
	public ChartTooltip(){}
	
	public ChartTooltip(String trigger, String formatter){
		this.trigger = trigger;
		this.formatter = formatter;
	}

	public String getTrigger() {
		return trigger;
	}

	public void setTrigger(String trigger) {
		this.trigger = trigger;
	}

	public String getFormatter() {
		return formatter;
	}

	public void setFormatter(String formatter) {
		this.formatter = formatter;
	}

	public boolean isShow() {
		return show;
	}

	public void setShow(boolean show) {
		this.show = show;
	}

	public ChartAxisPointer getAxisPointer() {
		return axisPointer;
	}

	public void setAxisPointer(ChartAxisPointer axisPointer) {
		this.axisPointer = axisPointer;
	}
	
}
